The invention relates to system integration, and more specifically to scheduling subsystems having independent processing machines.
A xe2x80x9csystemxe2x80x9d for purposes hereof is an integrated entity that includes two or more subsystems. Examples of systems include parts-manufacturing systems, semiconductor-fabrication facilities, and retailer supply-chain systems. Subsystems can be, for example, machines, robots, transport systems, people and software modules. System integration includes the process of coupling subsystems so that the resulting system achieves a set of functional requirements.
System integration can be a difficult task if the subsystems are obtained from different sources or vendors, or are otherwise not fully compatible. Additional integration challenges arise if the processing machines or processing stations of the subsystems have random process time variations. In particular, if two or more subsystems perform processes with different fluctuating cycle times, the scheduling of items through the system becomes more difficult with increasing time. The increase in the number of possible processing scenarios due to this time-dependent combinatorial complexity results in increasing uncertainty in time. Ad hoc approaches based on prior experience are typically used to deal with systems having time-dependent combinatorial complexity. Even in such systems, however, combinatorial expansion can eventually lead to operation in a chaotic state or even total system failure.
The present invention relates to system integration for systems having independent subsystems. The subsystems can include processing stations or machines that can have varying processing times. The invention increases system reliability by converting systems having time-dependent combinatorial complexity into systems having time-dependent periodic complexity.
One aspect of the invention relates to a method of managing a processing system having a plurality of functional requirements. The method includes the steps of determining a time to completion for each of a plurality of processes in a current period, determining a wait (or buffer) time for each process in the current period, determining a system period in response to the times to completion and the wait times, and initializing the functional requirements based on the system period. In one embodiment the step of initializing the functional requirements is performed at the expiration of the system period. In another embodiment the step of initializing the functional requirements is performed at the occurrence of a key functional requirement.
Another aspect of the invention relates to a system for processing items according to a plurality of processing tasks. Each of the processing tasks is performed at a processing station, or machine. The system includes a monitor module in communication with the processing station to determine a completion time for each processing task in a current processing period. The system also includes a processor that communicates with the monitor module. The processor determines wait times for each processing task in response to the completion times. The processor determines a system period in response to the wait times and the completion times. The wait times govern the movement of items among the processing tasks.